package cn.diancan.service;

import cn.diancan.exception.OutMsgException;
import cn.diancan.model.Goods;
import cn.diancan.vo.other.Pager;

public interface GoodsService {
    
    
    public boolean saveGoods(Long brandId,Long goodsCategoryId,String goodsNumber,String goodsName,String goodsDescription,String goodsBarcode)throws OutMsgException,Exception;
    
    
    public Goods saveGoods(Goods goods, boolean addProduct)throws OutMsgException,Exception;

    public Goods saveGoods2(Goods goods, boolean addProduct)throws OutMsgException,Exception;
    
    
    public boolean updateGoods(Goods goods)throws OutMsgException,Exception;


    
    
    public Pager findPager(Pager pager)throws OutMsgException;
    
    
    public Pager findGoodsVoPager(Pager pager)throws OutMsgException;
    
    
    
    public boolean deleteGoods(Long goodsId)throws OutMsgException,Exception;
    
    
    public Goods findByGoodsId(Long goodsId)throws OutMsgException;
    
    
    public Goods findByGoodsNumber(Long brandId,String goodsNumber)throws OutMsgException;
    
    
    public String findNewGoodsNumber();
    
    
    public Long findCountGoods(Long brandId)throws OutMsgException;
    
    
    public boolean updateM()throws OutMsgException,Exception;

    public boolean updateMoveGoods(Long goodsId,Integer moveType)throws OutMsgException,Exception;

}
